From 9c4657fb734c72852f2043ad27ca8e75c2571725 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Tue, 8 Jun 2010 15:19:32 +0200 Subject: [PATCH] GtkWindow: Use client pointer on pointer-dependent positioning. GTK_WIN_POS_MOUSE and GTK_WIN_POS_CENTER* now work relatively to the client pointer. --- gtk/gtkwindow.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c index e09d730638..37e1bed48f 100644 --- a/gtk/gtkwindow.c +++ b/gtk/gtkwindow.c @@ -5828,11 +5828,13 @@ get_monitor_containing_pointer (GtkWindow *window) GdkScreen *window_screen; GdkScreen *pointer_screen; GdkDisplay *display; + GdkDeviceManager *device_manager; GdkDevice *pointer; window_screen = gtk_window_check_screen (window); display = gdk_screen_get_display (window_screen); - pointer = gdk_display_get_core_pointer (display); + device_manager = gdk_display_get_device_manager (display); + pointer = gdk_device_manager_get_client_pointer (device_manager); gdk_display_get_device_state (display, pointer, &pointer_screen, @@ -6020,12 +6022,15 @@ gtk_window_compute_configure_request (GtkWindow *window, gint monitor_num; GdkRectangle monitor; GdkDisplay *display; + GdkDeviceManager *device_manager; GdkDevice *pointer; GdkScreen *pointer_screen; gint px, py; display = gdk_screen_get_display (screen); - pointer = gdk_display_get_core_pointer (display); + device_manager = gdk_display_get_device_manager (display); + pointer = gdk_device_manager_get_client_pointer (device_manager); + gdk_display_get_device_state (display, pointer, &pointer_screen, &px, &py, NULL); -- 2.30.2